package core.collection.mylist;

/**
 * List的三个子类的特点
 *
 * @author
 * @create 2018-12-23 10:20
 **/
public class mylist_5_List {
    /**
     * ArrayList:
     *      底层数据结构是数组，查询快，增删慢
     *      线程不安全，效率高
     * Vector:
     *      底层数据结构是数组，查询快，增删慢
     *      线程安全，效率低
     * Vector相对ArrayList查询慢（线程安全的）
     * Vector相对LinkedList增删慢（数组结构）
     * LinkedList:
     *      底层数据结构是链表，查询慢，增删快
     *      线程不安全，效率高
     *
     * Vector和ArrayList的区别
     *      Vector是线程安全的，效率低
     *      ArrayList是线程不安全的，效率高
     * 共同点：都是数组实现的
     *
     * ArrayList和LinkedList的区别
     *      ArrayList底层是数组结果，查询和修改快
     *      LinkedList底层是链表，增和删比较快，查询和修改比较慢
     * 共同点：都是线程不安全的
     *
     * 用谁？
     *      查询多用ArrayList
     *      增删多用LinkedList
     *      都多用ArrayList
     *      vector只在面试的时候用
     */
}
